package com.hooya.fa.eu.biz.dao.mapper;


import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.hooya.fa.eu.biz.dao.entity.StkOrigDataCollect;
import com.hooya.fa.eu.biz.dao.entity.dto.InvoiceDataDTO;
import com.hooya.fa.eu.biz.dao.entity.dto.StockQtyDTO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface StkOrigDataCollectMapper extends BaseMapper<StkOrigDataCollect> {

    int insertSelective(StkOrigDataCollect record);

    /**
     * 批量插入数据
     *
     * @param list 数据列表
     * @return 影响的行数
     */
    int insertBatch(List<StkOrigDataCollect> list);

    /**
     * 根据发票ID更新发票号
     *
     * @param startDate 开始日期
     * @param endDate   结束日期
     * @return 影响的行数
     */
    int updateInvoiceNoByInvoiceId(@Param("start") String start, @Param("end") String end);


    List<StockQtyDTO> getQtyChanges(@Param("begin") String begin, @Param("nextMonthBegin") String nextMonthBegin);

    List<String> selectSkuList(String startDate, String endDate);

    List<InvoiceDataDTO> getB2bGenerateData(@Param("start") String start, @Param("nextMonthStart") String nextMonthStart, @Param("currMonthEnd")String currMonthEnd);

    List<InvoiceDataDTO> getB2bDetailData(@Param("start") String start, @Param("nextMonthStart") String nextMonthStart);

    List<InvoiceDataDTO> getTranGenerateData(@Param("start") String start, @Param("nextMonthStart") String nextMonthStart);

    List<InvoiceDataDTO> getTranDetailData(@Param("start") String start, @Param("nextMonthStart") String nextMonthStart);

}